<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

    <script>

        // 与    &&          条件必须同时满足
        // 或    ||          条件至少满足一个
        // 非    !           取反


        // 逻辑运算的结果都是布尔值


        // 短路运算
        //    或运算中   见真即为真   ->   见真即短路
        //    与运算    见假即为假   ->   见假即为假


        console.log(5 > 3 && 3 > 2);   // true

        console.log(5 > 3 || 3 > 12);   // true

        console.log(!true);



        // 短路运算
        //    或运算中   见真即为真   ->   见真即短路
        console.log(5 > 3 || 3 > 12 || 4 < 6 || 6 > 7 || 8 > 10);
        //    5 > 3  true   后面都不会再进行判断

        //    与运算    见假即为假   ->   见假即为假
        // console.log(1 < 0 && 2 > 1 && ...) ;   // false 



        // 其他数字都是 -> true
        // 0 / NaN -> false
        console.log(!-3);
        console.log(!NaN);

        // 字符串都转 -> true
        // 空串 ''    -> false
        console.log(!'');


        // undefined -> false
        console.log(!undefined);


        // null -> false
        console.log(!null) ;





        
        console.log(1 == true) ;   // true > 1

    </script>

</body>

</html>